﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SisVenda.Web.Restrito.Fn;
using System.Data;
using SisVenda.Web.messageBox;
using SisVenda.Web.Code;


namespace SisVenda.Web.Restrito
{
    public partial class CadastroPessoaFisica : System.Web.UI.Page
    {
        CadastroPessoaFisicaFn pf = new CadastroPessoaFisicaFn();
        //public bool alteracao;

        protected void Page_Load(object sender, EventArgs e)
        {
        }

        public void MontarDadosPessoaisPF()
        {
            DataTable dt = new DataTable();
            pf.IniRefPessoais();
            dt = pf.ObterClientecpf(tbxCPFLocalizar.Text);
            //alteracao = true;
            if (dt.Rows.Count != 0)
            {

                lblAlterar.Text = "true";

                DataTable dtend = new DataTable();
               
                tbxNome.Text = dt.Rows[0]["nome"].ToString();
                tbxcpf.Text = dt.Rows[0]["cpf"].ToString();
                tbxTelefone.Text = dt.Rows[0]["telefone"].ToString();
                tbxCeluar.Text = dt.Rows[0]["celular"].ToString();
                tbxDataNasci.Text = dt.Rows[0]["dataNascimento"].ToString();
                tbxRG.Text = dt.Rows[0]["rg"].ToString();
                tbxFax.Text = dt.Rows[0]["fax"].ToString();
                tbxEmail.Text = dt.Rows[0]["email"].ToString();
                ddlEstadoCivil.SelectedValue = dt.Rows[0]["estadoCivil"].ToString();
                ddlTipoTel.SelectedValue = dt.Rows[0]["tipoTelefone_idTipoTelefone"].ToString();
                ddlSexo.SelectedValue = dt.Rows[0]["sexo"].ToString();
                //Dados Endereço
                dtend = pf.ObterEnderecoid(Convert.ToInt32(dt.Rows[0]["endereco_IdEndereco"].ToString()));
                tbxEndereco.Text = dtend.Rows[0]["descricao"].ToString();
                tbxNumero.Text = dtend.Rows[0]["numero"].ToString();
                tbxBairro.Text = dtend.Rows[0]["bairro"].ToString();
                tbxCep.Text = dtend.Rows[0]["cep"].ToString();
                ddlUF.SelectedValue = pf.ObterUFCidade(Convert.ToInt32(dtend.Rows[0]["cidade_IdCidade"].ToString()));
                ddlCidade.SelectedValue = dtend.Rows[0]["cidade_IdCidade"].ToString();
                ddlCidade.SelectedValue = dtend.Rows[0]["cidade_IdCidade"].ToString();

                DataTable dtref = new DataTable();
                dtref = pf.obeterReferecias(Convert.ToInt32(dt.Rows[0]["idPessoa"].ToString()));
                if (dtref.Rows.Count != 0)
                    gvwRefPessoais.DataSource = dtref;
                dtend = null;
                dtref = null;
            }
            else 
            {
                tbxcpf.Text = tbxCPFLocalizar.Text;
                //alteracao = false;
                lblAlterar.Text = "false";
            }
            dt = null;
        }

        protected void btnLocalizarCliente_Click(object sender, EventArgs e)
        {
            pnlTotal.Visible = true;
            MontarDadosPessoaisPF();
            pnlConsultaCliente.Visible = false;
            //pnlConsultaCliente.Enabled = false;
            tbxCPFLocalizar.Text = "";
            
        }

        protected void ddlUF_SelectedIndexChanged(object sender, EventArgs e)
        {
            odsCidade.DataBind();
            ddlCidade.DataBind();
            
        }


        protected void inserirPessoa() 
        {
            //if (alteracao == false)
            if (lblAlterar.Text.Equals("false"))
            {
                pf.InsertEndereco(tbxEndereco.Text, tbxBairro.Text, Convert.ToInt32(tbxNumero.Text), tbxCep.Text, Convert.ToInt32(ddlCidade.SelectedValue.ToString()));
                pf.InsertPessoa(tbxNome.Text, tbxcpf.Text, tbxRG.Text, "", "", ddlSexo.SelectedValue.ToString(), "F", Convert.ToDateTime(tbxDataNasci.Text), ddlEstadoCivil.SelectedValue.ToString(),
                                 tbxTelefone.Text, Convert.ToInt32(ddlTipoTel.SelectedValue.ToString()),tbxCeluar.Text, tbxFax.Text, tbxEmail.Text);
                
            }
            else
            {
                pf.UpdateEndereco(tbxEndereco.Text, tbxBairro.Text, Convert.ToInt32(tbxNumero.Text), tbxCep.Text, Convert.ToInt32(ddlCidade.SelectedValue.ToString()));
                pf.UpdatePessoa(tbxNome.Text, tbxcpf.Text, tbxRG.Text, "", "", ddlSexo.SelectedValue.ToString(), "F", Convert.ToDateTime(tbxDataNasci.Text), ddlEstadoCivil.SelectedValue.ToString(),
                                 tbxTelefone.Text, tbxCeluar.Text, tbxFax.Text, tbxEmail.Text, Convert.ToInt32(ddlTipoTel.SelectedValue.ToString()));
            }
            
        }

        protected void btnNovoRefPessoal_Click(object sender, EventArgs e)
        {
            pnlGrid.Visible = false;
            pnlCampos.Visible = true;
            btnNovoRefPessoal.Visible = false;
        }

        protected void btnInserir_Click(object sender, EventArgs e)
        {
            pnlGrid.Visible = true;
            pnlCampos.Visible = false;
            
            gvwRefPessoais.DataSource = pf.RefPessoais(tbxDescricao.Text, tbxTeleFoneRef.Text);
            gvwRefPessoais.DataBind();
            btnNovoRefPessoal.Visible = true;
            
        }

        protected void btnCancelar_Click(object sender, EventArgs e)
        {
            pnlGrid.Visible = true;
            pnlCampos.Visible = false;
            btnNovoRefPessoal.Visible = true;
        }

        protected void limparCampos()
        {
            foreach (Control componente in Page.Master.FindControl("MainContent").Controls)
            {
                //Verificando se Ã© um text box e limpando quando for
                if (componente.GetType() == typeof(TextBox))
                    ((TextBox)componente).Text = "";
            }
        }

        protected void wzdClientePF_CancelButtonClick(object sender, EventArgs e)
        {
            limparCampos();
            pnlTotal.Visible = false;
            pnlConsultaCliente.Enabled = true;
            pnlConsultaCliente.Visible = true;
        }

        protected void btnSalvar1_Click(object sender, EventArgs e)
        {

           inserirPessoa();
           MessageBox.Show("Ação Efetuado Com Sucesso!!!", MessageBox.MessageType.Success);
           limparCampos();
           pnlTotal.Visible = false;
           pnlConsultaCliente.Enabled = true;
           pnlConsultaCliente.Visible = true;

        }

        protected void btnCancelarS_Click(object sender, EventArgs e)
        {
            pnlTotal.Visible = false;
            pnlConsultaCliente.Enabled = true;
            pnlConsultaCliente.Visible = true;
        }

        protected void ddlCidade_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

    }
}